﻿using System.Collections.Generic;
using System.Web.Mvc;
using Nop.Web.Framework;

namespace Nop.Plugin.Misc.DynamicsCrm.Models
{
    public class DynamicsCrmSettingsModel
    {

        /// <summary>
        /// Gets or sets the API key.
        /// </summary>
        /// <value>
        /// The API key.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.UserName")]
        public virtual string UserName { get; set; }

        /// <summary>
        /// Gets or sets the web hook key.
        /// </summary>
        /// <value>
        /// The web hook key.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.Password")]
        public virtual string Password { get; set; }

        /// <summary>
        /// Gets or sets the default list id.
        /// </summary>
        /// <value>
        /// The default list id.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.OrganizationUri")]
        public virtual string OrganizationUri { get; set; }

        /// <summary>
        /// Gets or sets the email to send errors.
        /// </summary>
        /// <value>
        /// The email.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.EmailErrorsTo")]
        public virtual string EmailErrorsTo { get; set; }

        /// <summary>
        /// Gets or sets the CustomerTypeCode.
        /// </summary>
        /// <value>
        /// The CustomerTypeCode.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.CustomerTypeCode")]
        public virtual int CustomerTypeCode { get; set; }

        /// <summary>
        /// Gets or sets the PriceLevel.
        /// </summary>
        /// <value>
        /// The PriceLevel.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.PriceLevel")]
        public virtual string PriceLevel { get; set; }

        /// <summary>
        /// Gets or sets the Uom.
        /// </summary>
        /// <value>
        /// The Uom.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.Uom")]
        public virtual string Uom { get; set; }

        /// <summary>
        /// Gets or sets the UomSchedule.
        /// </summary>
        /// <value>
        /// The UomSchedule.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.UomSchedule")]
        public virtual string UomSchedule { get; set; }

        /// <summary>
        /// Gets or sets a value indicating whether [auto sync].
        /// </summary>
        /// <value>
        ///   <c>true</c> if [auto sync]; otherwise, <c>false</c>.
        /// </value>
        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.AutoSync")]
        public virtual bool AutoSync { get; set; }

        [NopResourceDisplayName("Plugin.Misc.DynamicsCrm.AutoSyncEachMinutes")]
        public virtual int AutoSyncEachMinutes { get; set; }

        public string SaveResult { get; set; }

        public string SyncResult { get; set; }
    }
}